
Spring Security 入门原理及实战
本文内容纲要:- 从一个Spring Security的例子开始- 创建不受保护的应用- 加入spring security 保护应用- 自定义security配置- 角色-资源 访问控制- 获取当前登录用户信息- 小结- Spring Security 核心组件- SecurityContext- SecurityContextHolder- Authentication- UserDetails- UserDetailsService- AuthenticationManager- 小结...
2024-01-10
没有会话时如何使用Spring Security?
我正在使用Spring Security构建一个Web应用程序,该应用程序将驻留在Amazon EC2上并使用Amazon的Elastic Load Balancer。不幸的是,ELB不支持粘性会话,因此我需要确保我的应用程序无需会话即可正常运行。到目前为止,我已经设置了RememberMeServices来通过cookie分配令牌,并且可以正常工作,但是我希望cookie在浏览...
2024-01-10
使用spring security告诉ajax请求登录页面在哪里
我有一些用spring保护的网址(通过xml配置)。有用。但是,当我尝试使用ajax请求到达该端点时,得到了302(找到)响应。这会将我的ajax调用重定向到登录页面(因此我获取html)。但是,我想获得一个401(未经授权)响应,其中包含客户端应用程序可用的登录页面的url,因此我可以使用javascript将用户重...
2024-01-10
在Spring Security中更改登录服务URL
嗨,我已经在我的Spring Boot Web应用程序中使用JWT过滤器实现了Spring安全性。但是默认身份验证发生在urlhttp://localhost:8080/login。如何更改/login为我需要的某些网址/rest/auth/login?我的WebSecurity课是@EnableWebSecuritypublic class WebSecurity extends WebSecurityConfigurerAdapter {@Autowiredprivate UserDetailsServ...
2024-01-10
Spring Security框架中踢人下线技术探索
本文内容纲要:- 1.背景- 2.需求分析- 3.源码分析- 4.解决方案1.背景在某次项目的开发中,使用到了Spring Security权限框架进行后端权限开发的权限校验,底层集成Spring Session组件,非常方便的集成Redis进行分布式Session的会话集群部署。系统正式上线后,各个部署节点能够非常方便的进行集群部署,...
2024-01-10
我如何在Spring Security中使用CSRF
我的登录页面。<form class="form-horizontal" ng-controller="loginCtrl" action="/login" method="post"> <div class="form-group input-login"> <div ng-if="message.error" class="alert alert-danger"> <p>Invalid username and password.</p> </di...
2024-01-10
Spring Security-身份验证失败-空白消息
我正在研究spring-mvc网络应用程序。在我的登录页面上,如果用户输入了错误的凭据,我想显示一条错误消息。因此,我尝试使用Spring Security来显示错误消息,但无法显示任何消息。对于登录表单,我已将绑定完成为:<form method="post" action="<c:url value='/j_spring_security_check' />" id="loginForm">.... login ui</form>...
2024-01-10
Spring Security登录添加验证码的实现过程
登录添加验证码是一个非常常见的需求,网上也有非常成熟的解决方案,其实,要是自己自定义登录实现这个并不难,但是如果需要在 Spring Security 框架中实现这个功能,还得稍费一点功夫,本文就和小伙伴来分享下在 Spring Security 框架中如何添加验证码。关于 Spring Security 基本配置,这里就不再多说...
2024-01-10
Spring Security 表单登录功能的实现方法
1.简介本文将重点介绍使用 Spring Security 登录。 本文将构建在之前简单的 Spring MVC示例 之上,因为这是设置Web应用程序和登录机制的必不可少的。2. Maven 依赖要将Maven依赖项添加到项目中,请参阅Spring Security with Maven 一文。 标准的 spring-security-web 和 spring-security-config 都是必需的。3. Spring Security Java配...
2024-01-10
了解Spring @Autowired用法
我正在阅读spring 3.0.x参考文档以了解Spring Autowired注释:3.9.2 @Autowired和@Inject我无法理解以下示例。我们需要在XML中做一些工作才能使其工作吗?例1public class SimpleMovieLister { private MovieFinder movieFinder; @Autowired public void setMovieFinder(MovieFinder movieFinder) { this.mov...
2024-01-10
在spring@RequestBody始终为空
对于以下方法,JSONObject始终为空。 @RequestMapping(value = "/package/{id}", method = RequestMethod.PUT)@ResponseStatus(HttpStatus.OK)@ResponseBodypublic SPackage updatePackage(@PathVariable String id, @RequestBody JSONObject sPackage) {}我的ajax就是这样 我正在将对象作为服务器端的空映射 ...
2024-01-10
Spring Security在安全注释配置中排除URL模式
我有使用java config方法配置的具有Spring安全性的Spring Web应用程序。我想从身份验证中排除某些URL模式(例如:静态资源等)。我之前用spring security xml config完成了此操作,但是用java config无法弄清,因为添加antmatchers并没有帮助。以下是我在扩展WebSecurityConfigurerAdapter的安全性配置类中添加的代码@Override...
2024-01-10
如何在Spring Security中启用会话并设置会话超时
我是Spring Security的新手,正在从事登录,注销和会话超时功能。我已经通过参考此文档配置了代码。我的代码如下:@Overrideprotected void configure(HttpSecurity http) throws Exception { http.authorizeRequests().antMatchers("/admin/**") .access("hasRole('ROLE_USER')").and().formLogin() .login...
2024-01-10
关于属性vs构造函数的Spring @Autowire
因此,由于我一直在使用Spring,所以如果我要编写一个具有依赖项的服务,我将执行以下操作:@Componentpublic class SomeService { @Autowired private SomeOtherService someOtherService;}我现在遇到了使用另一种约定实现相同目标的代码@Componentpublic class SomeService { private final SomeOtherService someOtherService; @...
2024-01-10
Spring Security登录始终落在没有消息的错误页面中
我在Spring的一个小型项目中使用的是登录表单,但是我有一个小问题,那就是每次我使用登录表单登录时都会收到错误重定向。这是我的SecurityConfiguration.javapackage com.ffuentese;import javax.sql.DataSource;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Va...
2024-01-10
Spring Security OAuth2,哪个决定安全性?
我一直在尝试使用Dave Syer的指南来实现OAuth2身份验证服务器,并从JHipster获得一些启发。但是我无法弄清楚它们如何协同工作。当我使用ResourceServerConfigurerAdapter时,使用WebSecurityConfigurerAdapter的安全设置似乎被覆盖。@Configuration@EnableResourceServerpublic class OAuth2ResourceConfig extends ResourceServerConfigurerAdapte...
2024-01-10
java spring中的注解@Repository如何工作?
我有这样的代码:@Repositorypublic interface EquipmentRepository extends JpaRepository<Equipment, Integer>{Equipment findById(int id);}@Servicepublic class EquipmentServiceImpl implements EquipmentService {@AutowiredEquipmentRepository equipmentRepository;@Override...
2024-01-10
spring-data-redis 动态切换数据源的方法
最近遇到了一个麻烦的需求,我们需要一个微服务应用同时访问两个不同的 Redis 集群。一般我们不会这么使用 Redis,但是这两个 Redis 本来是不同业务集群,现在需要一个微服务同时访问。其实我们在实际业务开发的时候,可能还会遇到类似的场景。例如 Redis 读写分离,这个也是 spring-data-redis 没有提...
2024-01-10
Spring Security OAuth2禁用基于jsessionid的会话
我没有发表评论的声誉,否则这篇文章描述了完全相同的问题。我已经在spring 4应用程序中成功实现了spring security oauth22.0.5。一切正常,我可以生成令牌,并且对api请求进行了正确的身份验证。但是问题在于,一旦使用基于浏览器的应用程序中的访问令牌对api进行身份验证,后续调用就不需要访问令牌...
2024-01-10
Spring Security 3.2 CSRF对多部分请求的支持
几年来我们一直在我们的应用程序中使用Spring Security。上周,我们将Spring Security从3.1.4版本升级到了3.2.0。升级进行得很好,并且升级后我们没有发现任何错误。在浏览Spring Security 3.2.0文档时,我们发现了CSRF保护和安全标头周围的新增功能。我们按照Spring Security 3.2.0文档中的说明为受保护的资源启用CSRF...
2024-01-10
Java Spring Security:多个HTTP配置不起作用
我正在尝试使用Spring Security,并且有一个用例,其中我想保护不同的登录页面和不同的URL集。这是我的配置:@Configuration@Order(1)public static class ProviderSecurity extends WebSecurityConfigurerAdapter{ @Override protected void configure(HttpSecurity http) throws Exception { http ...
2024-01-10
使用Spring MVC的ResponseEntity返回流
我有一个Spring MVC方法,返回一个ResponseEntity。根据检索到的特定数据,有时需要将数据流返回给用户。在其他时候,它会返回流以外的内容,有时还会返回重定向。我绝对希望它是一个流而不是字节数组,因为它可能很大。当前,我使用以下代码片段返回流:HttpHeaders httpHeaders = createHttpHeaders();IOUtils.c...
2024-01-10
【Web前端问题】spring security 前端登录后,请求后台api报302
问题描述我在spring boot项目中引入有了spring security来做登录验证这样的事情.因为是前后端分离的项目,所以,我的前端有个这样的登录请求 function login(){ $.ajax({ useDefaultXhrHeader: false, type:"post", url:"http://127.0.0.1:8080/user/login", ...
2024-01-10
SpringBoot使用Spring Security实现登录注销功能
1.首先看下我的项目结构我们逐个讲解/** * 用户登录配置类 * @author Administrator * */public class AdminUserDateils implements UserDetails { private static final long serialVersionUID = -1546619839676530441L; private transient YCAdmin yCAdmin; public AdminUserDateils() { } publ...
2024-01-10
在spring-security中,有什么方法可以强制某些页面使用https?
目前我正在使用tomcat 6和spring-security 3.0.3.RELEASE而没有apache。我可以为登录页面强制使用https,并且效果很好。下一个配置用于防止通过http访问某些页面。<http use-expressions="true"> <intercept-url pattern="/" access="permitAll" /> <intercept-url pattern="/login" access="permitAll" requires-channel="...
2024-01-10
